package com.ruoyi.system.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

import java.math.BigDecimal;

/**
 * 采购计划对象 sys_asset_procurement_plan
 * 
 * @author sxy
 * @date 2025-03-27
 */
public class SysAssetProcurementPlan extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 计划ID */
    private Long planId;

    /** 采购资产 */
    @Excel(name = "采购资产")
    private String assetName;

    /** 申请人ID */
    @Excel(name = "申请人ID")
    private Long applicantId;

    /** 型号 */
    @Excel(name = "型号")
    private String model;

    /** 规格 */
    @Excel(name = "规格")
    private String specification;

    public BigDecimal getBudget() {
        return budget;
    }

    public void setBudget(BigDecimal budget) {
        this.budget = budget;
    }

    /** 制造商 */
    @Excel(name = "制造商")
    private String manufacturer;

    /** 采购数量 */
    @Excel(name = "采购数量")
    private Long procurementQuantity;

    /** 采购预算 */
    @Excel(name = "采购预算")
    private BigDecimal budget;

    /** 采购原因 */
    @Excel(name = "采购原因")
    private String procurementReason;

    /** 审批人ID */
    @Excel(name = "审批人ID")
    private Long reviewerId;

    /** 审批状态 */
    @Excel(name = "审批状态")
    private String reviewStatus;

    /** 驳回原因 */
    @Excel(name = "驳回原因")
    private String overruleReason;

    /** 负责人ID */
    @Excel(name = "负责人ID")
    private Long headId;

    public void setPlanId(Long planId) 
    {
        this.planId = planId;
    }

    public Long getPlanId() 
    {
        return planId;
    }
    public void setAssetName(String assetName) 
    {
        this.assetName = assetName;
    }

    public String getAssetName() 
    {
        return assetName;
    }
    public void setApplicantId(Long applicantId) 
    {
        this.applicantId = applicantId;
    }

    public Long getApplicantId() 
    {
        return applicantId;
    }
    public void setModel(String model) 
    {
        this.model = model;
    }

    public String getModel() 
    {
        return model;
    }
    public void setSpecification(String specification) 
    {
        this.specification = specification;
    }

    public String getSpecification() 
    {
        return specification;
    }
    public void setManufacturer(String manufacturer) 
    {
        this.manufacturer = manufacturer;
    }

    public String getManufacturer() 
    {
        return manufacturer;
    }
    public void setProcurementQuantity(Long procurementQuantity) 
    {
        this.procurementQuantity = procurementQuantity;
    }

    public Long getProcurementQuantity() 
    {
        return procurementQuantity;
    }
    public void setProcurementReason(String procurementReason) 
    {
        this.procurementReason = procurementReason;
    }

    public String getProcurementReason() 
    {
        return procurementReason;
    }
    public void setReviewerId(Long reviewerId) 
    {
        this.reviewerId = reviewerId;
    }

    public Long getReviewerId() 
    {
        return reviewerId;
    }
    public void setReviewStatus(String reviewStatus) 
    {
        this.reviewStatus = reviewStatus;
    }

    public String getReviewStatus() 
    {
        return reviewStatus;
    }
    public void setOverruleReason(String overruleReason) 
    {
        this.overruleReason = overruleReason;
    }

    public String getOverruleReason() 
    {
        return overruleReason;
    }
    public void setHeadId(Long headId) 
    {
        this.headId = headId;
    }

    public Long getHeadId() 
    {
        return headId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("planId", getPlanId())
            .append("assetName", getAssetName())
            .append("applicantId", getApplicantId())
            .append("model", getModel())
            .append("specification", getSpecification())
            .append("manufacturer", getManufacturer())
            .append("procurementQuantity", getProcurementQuantity())
                .append("budget", getBudget())
            .append("procurementReason", getProcurementReason())
            .append("reviewerId", getReviewerId())
            .append("reviewStatus", getReviewStatus())
            .append("overruleReason", getOverruleReason())
            .append("headId", getHeadId())
            .append("createTime", getCreateTime())
            .toString();
    }
}
